package amani.wechat.platform.services;

import java.util.List;
import amani.wechat.platform.webserviceClient.*;

public interface ICommonService {

	/**
	 * 获取单个门店的所有信息
	 * 
	 * @param strCompId
	 * @return
	 */
	public Companyinfo loadCompanyinfo(String strCompId);

	/**
	 * 获取所有的门店信息所有信息
	 * 
	 * @return
	 */
	public List<Companyinfo> loadAllCompanyinfo();

	/**
	 * 获取单个门店的项目信息
	 * 
	 * @param strCompId
	 * @return
	 */
	public List<Projectinfo> loadProjectinfo(String strCompId);

	/**
	 * 获取所有门店的产品信息
	 * 
	 * @return
	 */

	public List<Goodsinfo> loadAllGoodinfo();

	/**
	 * 获取单个门店的员工信息
	 * 
	 * @param strCompId
	 * @param itemNo
	 * @return
	 */
	public String loadStaffinfo(String strCompId, String itemNo);

	/**
	 * 获取单个门店的排班信息
	 * 
	 * @param strCompId
	 * @return
	 */
	public List<CategoryinfoId> loadCategory(String strCompId);

	/**
	 * //获取单个门店的房间信息
	 * 
	 * @param strCompId
	 * @return
	 */
	public List<Roominfo> loadRoomInfo(String strCompId);

	/**
	 * 获取单个门店的镜台信息
	 * 
	 * @param strCompId
	 * @return
	 */
	public List<String> loadMirror(String strCompId);

	/**
	 * 获取会员信息
	 * 
	 * @param strPhone
	 * @param strCardNo
	 * @return
	 */
	public List<Cardinfo> loadCardInfos(String strPhone, String strCardNo);

	/**
	 * 获取单个会员卡信息
	 * 
	 * @param strCompId
	 * @param strCardNo
	 * @return
	 */
	public Cardinfo loadCardInfo(String strCompId, String strCardNo);

	/**
	 * 保存开单信息
	 * 
	 * @param spadMconsumeInfo
	 * @param spadDconsumeInfo
	 * @return
	 */
	public boolean saveIPADBillInfo(SpadMconsumeInfo spadMconsumeInfo,
			List<SpadDconsumeInfo> spadDconsumeInfo);

	/**
	 * 保存开单信息
	 * 
	 * @return
	 */
	public String loadVouchers();

	/***
	 * 保存开单信息
	 * 
	 * @param strOpenId
	 * @param strClientName
	 * @param strMobile
	 * @param strVchNo
	 * @param strBillId
	 * @return
	 */
	public String loadDqyNo(String strOpenId, String strClientName,
			String strMobile, String strVchNo, String strBillId);

	/**
	 * 保存开单信息
	 * 
	 * @param strCardNo
	 * @return
	 */
	public String loadCardAccount(String strCardNo);

	/**
	 * 保存开单信息
	 * 
	 * @param strCompId
	 * @param strCardNo
	 * @return
	 */
	public String loadCardproaccounts(String strCompId, String strCardNo);

	/**
	 * 保存开单信息
	 * 
	 * @param strCardNo
	 * @return
	 */
	public String loadcCardaccountchangehistories(String strCardNo);

	/**
	 * 保存开单信息
	 * 
	 * @param strCardNo
	 * @param strPassword
	 * @return
	 */
	public boolean updateCardPassword(String strCardNo, String strPassword);

	/**
	 * 保存开单信息
	 * 
	 * @param strCardNo
	 * @param strPassword
	 * @return
	 */
	public boolean checkCardPassword(String strCardNo, String strPassword);

	/**
	 * 保存开单信息
	 * 
	 * @param strVchNo
	 * @return
	 */
	public List<Vouchersdetal> loadVouchersdetalsById(String strVchNo);

	/**
	 * 保存开单信息
	 * 
	 * @param strCardNo
	 * @param strOperId
	 * @return
	 */
	public Wxbandcard loadWxbandcard(String strCardNo, String strOperId);

	/**
	 * 保存开单信息
	 * 
	 * @param strDyqNo
	 * @return
	 */
	public boolean checkDyqNo(String strDyqNo);

	/**
	 * 保存开单信息
	 * 
	 * @param strDyqNo
	 * @return
	 */
	public String lsDnointernalcardinfos(String strDyqNo);

	/**
	 * 保存开单信息
	 * 
	 * @param strDyqNo
	 * @return
	 */
	public Nointernalcardinfo loadNointernalcardinfo(String strDyqNo);

	/**
	 * 保存开单信息
	 * 
	 * @param strOperId
	 * @return
	 */
	public String loadwWeixinclents(String strOperId);

	/**
	 * 保存开单信息
	 * 
	 * @param strCompId
	 * @param strBillId
	 * @param strDate
	 * @return
	 */
	public boolean wxPost(String strCompId, String strBillId, String strDate);

	/**
	 * 保存开单信息
	 * 
	 * @param billid
	 * @param operid
	 * @param discount
	 * @param content
	 * @param amt
	 * @return
	 */
	public boolean saveEvaluation(String billid, String operid,
			double discount, String content, double amt);

	/**
	 * 保存开单信息
	 * 
	 * @param operid
	 * @param billid
	 * @return
	 */
	public Evaluation loadEvaluation(String operid, String billid);

	/**
	 * 保存预约主档
	 * 
	 * @param strCompId
	 * @param strBillId
	 * @param strCardNo
	 * @param orderPhone
	 * @param strDate
	 * @param strTime
	 * @param openid
	 * @param billType
	 * @param complydetail
	 * @return
	 */
	public boolean saveOrders(String strCompId, String strBillId,
			String strCardNo, String orderPhone, String strDate,
			String strTime, String openid, int billType, String complydetail);

	/**
	 * 保存预约主档
	 * 
	 * @param strCompId
	 * @param strBillId
	 * @param strPrjInfo
	 * @param strPrjName
	 * @return
	 */
	public boolean saveOrderPrjInfo(String strCompId, String strBillId,
			String strPrjInfo, String strPrjName);

	/**
	 * 保存预约主档
	 * 
	 * @param strCompId
	 * @param strBillId
	 * @param strEmpNo
	 * @param strEmpName
	 * @param strEmpInid
	 * @return
	 */
	public boolean saveOrderEmpInfo(String strCompId, String strBillId,
			String strEmpNo, String strEmpName, String strEmpInid);

	/**
	 * 查询预约
	 * 
	 * @param openid
	 * @return
	 */
	public String loadOrders(String openid);

	/**
	 * 查询推荐店面
	 * 
	 * @param strCardNo
	 * @return
	 */
	public String loadCompByCardNo(String strCardNo);

	/**
	 * 查询推荐员工
	 * 
	 * @param strCompId
	 * @param strCardNo
	 * @return
	 */
	public String loadEmpInfoByComp(String strCompId, String strCardNo);

	/**
	 * 查询店面所有的美容师和美发师
	 */
	public String loadEmpInfoByDept(String strCompId);

	/**
	 * 单据作废
	 * 
	 * @param strCompId
	 * @param strBillId
	 * @return
	 */
	public boolean updBillState(String strCompId, String strBillId);

	/**
	 * 修改单据状态
	 * 
	 * @param strBillId
	 * @return
	 */
	public boolean updOrderState(String strBillId);

	/**
	 * 查询单据状态
	 * 
	 * @param strBillId
	 * @return
	 */
	public String checkBillState(String strBillId);

	/**
	 * 修改单据状态
	 * 
	 * @param strParams
	 * @return
	 */
	public boolean bandStaffInfo(String strParams);

	/**
	 * 保存预约主档
	 * 
	 * @param strCompId
	 * @param strBillId
	 * @param strItemNo
	 * @param strEmpNo
	 * @param ispz
	 * @param strDate
	 * @param strTime
	 * @param orderPhone
	 * @param strCardNo
	 * @param openid
	 * @param strEmpName
	 * @return
	 */
	public String saveNewOrders(String strCompId, String strBillId,
			String strItemNo, String strEmpNo, int ispz, String strDate,
			String strTime, String orderPhone, String strCardNo, String openid,
			String strEmpName);

	/**
	 * 查询预约
	 */
	public String loadOrderDetal(String openid);

	/**
	 * 根据预约单号查询预约
	 * 
	 * @param callbillid
	 * @return
	 */
	public String loadOrderById(String callbillid);

	/**
	 * 根据员工工号查询预约
	 * 
	 * @param strCompId
	 * @param strEmpNo
	 * @param orderDate
	 * @param orderTime
	 * @return
	 */
	public String loadOrderByEmp(String strCompId, String strEmpNo,
			String orderDate, String orderTime);

	/**
	 * 根据OpenId查询预约
	 * 
	 * @param openId
	 * @param orderDate
	 * @param orderTime
	 * @return
	 */
	public String loadOrderByOpenId(String openId, String orderDate,
			String orderTime);

	/**
	 * 推荐员工
	 * 
	 * @param strCompId
	 * @param strCardNo
	 * @param billtype
	 * @return
	 */
	public String loadNewEmpInfoByComp(String strCompId, String strCardNo,
			int billtype);

	/**
	 * 推荐明星发型师
	 * 
	 * @param strCompId
	 * @return
	 */
	public String loadStartHairInfo(String strCompId);

	/**
	 * 推荐明星美容师
	 * 
	 * @param strCompId
	 * @return
	 */
	public String loadStartBeautyInfo(String strCompId);

	/**
	 * 检查用户名密码
	 * 
	 * @param userName
	 * @param pwd
	 * @return
	 */
	public String checkUser(String strCompId, String userName, String pwd);

	/**
	 * 保存盘点信息
	 * 
	 * @param inventory
	 * @param lsInventorydetals
	 * @return
	 */
	public String saveInventory(String strCompId, String userId,
			String strParams);

	/**
	 * 增加盘点主档
	 * 
	 * @param strCompId
	 * @return
	 */
	public String addInventory(String strCompId);

	/**
	 * 检查条形码的状态
	 * 
	 * @param strCompId
	 * @param strGoodBar
	 * @return
	 */
	public String checkGoodBar(String strCompId, String strGoodBar);

	/**
	 * 删除盘点信息
	 * 
	 * @param inventBill
	 * @return
	 */
	public String deleteInventoryByInventBill(String strCompId,
			String inventBill);

	/**
	 * 删除盘点信息
	 * 
	 * @param inventBill
	 * @return
	 */
	public String deleteInventoryByBill(String strCompId, String bill);

	/**
	 * 查询条形码信息
	 * 
	 * @param goodBarNo
	 * @return
	 */
	public String findGoodBarInfo(String goodBarNo);

}
